/**
 * 登录页脚本
 */
(function($) {
	var loginPage = {
		init : function() {
			// 登录按钮事件
			loginPage._reg_login_btn_and_input_check_event();
			// 注册form提交前的事件
			loginPage._reg_before_form_submit_event();
		},
		// 注册form提交前的事件
		_reg_before_form_submit_event : function() {
			// 用户名
			var $username = $("input[name='username']");
			// 密码
			var $password = $("input[name='password']");
			// 签名
			var $sign = $("input[name='sign']");
			$("form").on("submit", function() {
				$("#login_ok").attr("disabled", true).val('登陆中..');
				if (loginPage._trigger_validate($username) == true && loginPage._trigger_validate($password) == true) {
					// 用户名
					var username = $username.val();
					// 密码
					var password = $password.val();
					// 验证码
					var captcha = $("input[name='j_captcha']").val();
					// session
					var session_id = $("input[name='session_id']").val();
					// 要签名的字符串
					var to_sign_string = username + "-" + sha256_digest(sha256_digest(password)) + "-" + captcha + "-" + session_id;
					
					// 签名
					var sign = sha256_digest(sha256_digest(to_sign_string))
					$("input[name='sign']").val(sign);
					// 最后清空密码
					$password.val("");
					
					return true;
				} else {
					$("#login_ok").attr("disabled", false).val('登陆');
					return false;
				}
			});
		},
		// 输入框较验事件
		_reg_login_btn_and_input_check_event : function() {
			// 用户名
			var $username = $("input[name='username']");
			// 密码
			var $password = $("input[name='password']");
			loginPage._reg_validate($username, "用户名不能为空!");
			loginPage._reg_validate($password, "密码不能为空!");
			$username.bind("blur", function() {
				loginPage._trigger_validate($username);
			});
			$password.bind("blur", function() {
				loginPage._trigger_validate($password);
			});
		},
		// 注册检验
		_reg_validate : function($elem, contentText) {
			$elem.popover({
				trigger : "manual",
				content : contentText
			});
		},
		// 触发检验
		_trigger_validate : function($elem) {
			if ($elem.val() == "") {
				$elem.popover("show");
				return false;
			} else {
				$elem.popover("hide");
				return true;
			}
		}
	}
	loginPage.init();
})(jQuery);
